<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>测试一</title>
    <script src="command/echarts/echarts.js"></script>
    <script src="command/echarts/echarts-gl.js"></script>
    <script src="command/jquery/jquery-3.4.1.js"></script>
</head>
<!--game图表测试用-->
<body>
<h3>webSocket测试单页面加载及推送</h3>
<br/>
<input id="username" type="text">
<button onclick="send()">发送</button>
&nbsp;&nbsp;&nbsp;&nbsp;
<button onclick="clo()">关闭</button>
<br/>
<hr/>
<div id="message"></div>
<div id="main" style="width: 600px;height:400px;"></div>
<div id="test" style="width: 700px;height:700px;"></div>
<div id="test1" style="width: 700px;height:700px;"></div>
</body>
<!--<script>-->
<!--    let myChart = echarts.init(document.getElementById('main'));-->



<!--    let webSocket=null;-->
<!--    if ("WebSocket" in window){-->
<!--        webSocket=new WebSocket("ws://127.0.0.1:8080/websocket");-->
<!--    }-->
<!--    else {-->
<!--        alert("浏览器不支持webSocket！");-->
<!--    }-->
<!--    function setMessage(message){-->
<!--        document.getElementById("message").innerText+=message;-->
<!--    }-->
<!--    webSocket.onopen=function () {-->
<!--        console.log("连接成功");-->
<!--        setMessage("连接成功")-->
<!--    };-->
<!--    //刷新div-->
<!--    webSocket.onmessage=function (event) {-->
<!--        let gname = [];-->
<!--        let grank = [];-->
<!--        setMessage(event.data);-->
<!--        let obj=JSON.parse(event.data);-->
<!--        let gameobj=obj.game;-->
<!--        for (let i=0;i<gameobj.length;i++){-->
<!--            gname.push(gameobj[i].gname);-->
<!--            grank.push(gameobj[i].grank);-->
<!--        }-->
<!--        console.log(gname);-->


<!--        let option = {-->
<!--            title: {-->
<!--                text: 'ECharts 入门示例'-->
<!--            },-->
<!--            tooltip: {},-->
<!--            legend: {-->
<!--                data:['销量']-->
<!--            },-->
<!--            xAxis: {-->
<!--                //结合-->
<!--                data: gname-->
<!--            },-->

<!--            yAxis: {},-->
<!--            series: [{-->
<!--                name: '销量',-->
<!--                type: 'bar',-->
<!--                //结合-->
<!--                data: grank-->
<!--            }]-->
<!--        };-->
<!--        myChart.setOption(option);-->
<!--    };-->


<!--    function send() {-->
<!--        let user=document.getElementById("username").value;-->
<!--        //alert(msg);-->
<!--        webSocket.send(user);-->
<!--    }-->
<!--    //关闭按钮调用函数-->
<!--    function clo() {-->
<!--        webSocket.close(3000,"强制关闭");-->
<!--    }-->
<!--    webSocket.onclose=function () {-->
<!--        setMessage("close websocket");-->
<!--    };-->
<!--    window.onbeforeunload=function () {-->
<!--        clo();-->
<!--    };-->








<!--</script>-->


<script>

    let myChart1 = echarts.init(document.getElementById('test'));
    // let myChart2 = echarts.init(document.getElementById('test1'));

    let webSocket=null;
    if ("WebSocket" in window){
        webSocket=new WebSocket("ws://127.0.0.1:8080/websocket");
    }
    else {
        alert("浏览器不支持webSocket！");
    }
    function setMessage(message){
        document.getElementById("message").innerText+=message;
    }
    webSocket.onopen=function () {
        console.log("连接成功");
        setMessage("连接成功")
    };
    //刷新div
    webSocket.onmessage=function (event) {
        let scores= [];
        let data= [];
        setMessage(event.data);
        let obj=JSON.parse(event.data);
        let gametypeobj=obj.gametypes;
        for (let i=0;i<gametypeobj.length;i++){
            scores.push(gametypeobj[i].score);
        }
        console.log(scores);

        for (let i=0;i<3;i++) {
            for (let j = 0; j < 10; j++) {
                let array=[];
                array.push(i);
                array.push(j);
                array.push(scores[i*10+j]);
                data.push(array);
            }
        }
        console.log(data);



        let hours = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10'];
        let days = ['动作', '角色扮演', '策略'];
        // var hours = ['12a', '1a', '2a', '3a', '4a', '5a', '6a',
        //     '7a', '8a', '9a','10a','11a',
        //     '12p', '1p', '2p', '3p', '4p', '5p',
        //     '6p', '7p', '8p', '9p', '10p', '11p'];
        // var days = ['Saturday', 'Friday', 'Thursday',
        //     'Wednesday', 'Tuesday', 'Monday', 'Sunday'];

        // let data = [[0,0,5],[0,1,1],[0,2,0],[0,3,0],[0,4,0],[0,5,0],[0,6,0],[0,7,0],[0,8,0],[0,9,0],[0,10,0],[0,11,2],[0,12,4],[0,13,1],[0,14,1],[0,15,3],[0,16,4],[0,17,6],[0,18,4],[0,19,4],[0,20,3],[0,21,3],[0,22,2],[0,23,5],[1,0,7],[1,1,0],[1,2,0],[1,3,0],[1,4,0],[1,5,0],[1,6,0],[1,7,0],[1,8,0],[1,9,0],[1,10,5],[1,11,2],[1,12,2],[1,13,6],[1,14,9],[1,15,11],[1,16,6],[1,17,7],[1,18,8],[1,19,12],[1,20,5],[1,21,5],[1,22,7],[1,23,2],[2,0,1],[2,1,1],[2,2,0],[2,3,0],[2,4,0],[2,5,0],[2,6,0],[2,7,0],[2,8,0],[2,9,0],[2,10,3],[2,11,2],[2,12,1],[2,13,9],[2,14,8],[2,15,10],[2,16,6],[2,17,5],[2,18,5],[2,19,5],[2,20,7],[2,21,4],[2,22,2],[2,23,4],[3,0,7],[3,1,3],[3,2,0],[3,3,0],[3,4,0],[3,5,0],[3,6,0],[3,7,0],[3,8,1],[3,9,0],[3,10,5],[3,11,4],[3,12,7],[3,13,14],[3,14,13],[3,15,12],[3,16,9],[3,17,5],[3,18,5],[3,19,10],[3,20,6],[3,21,4],[3,22,4],[3,23,1],[4,0,1],[4,1,3],[4,2,0],[4,3,0],[4,4,0],[4,5,1],[4,6,0],[4,7,0],[4,8,0],[4,9,2],[4,10,4],[4,11,4],[4,12,2],[4,13,4],[4,14,4],[4,15,14],[4,16,12],[4,17,1],[4,18,8],[4,19,5],[4,20,3],[4,21,7],[4,22,3],[4,23,0],[5,0,2],[5,1,1],[5,2,0],[5,3,3],[5,4,0],[5,5,0],[5,6,0],[5,7,0],[5,8,2],[5,9,0],[5,10,4],[5,11,1],[5,12,5],[5,13,10],[5,14,5],[5,15,7],[5,16,11],[5,17,6],[5,18,0],[5,19,5],[5,20,3],[5,21,4],[5,22,2],[5,23,0],[6,0,1],[6,1,0],[6,2,0],[6,3,0],[6,4,0],[6,5,0],[6,6,0],[6,7,0],[6,8,0],[6,9,0],[6,10,1],[6,11,0],[6,12,2],[6,13,1],[6,14,3],[6,15,4],[6,16,0],[6,17,0],[6,18,0],[6,19,0],[6,20,1],[6,21,2],[6,22,2],[6,23,6]];
        option1 = {
            background: '#000000',
            tooltip: {},
            visualMap: {
                max: 20,
                inRange: {
                    color: ['#313695', '#4575b4', '#74add1', '#abd9e9', '#e0f3f8', '#ffffbf', '#fee090', '#fdae61', '#f46d43', '#d73027', '#a50026']
                }
            },
            xAxis3D: {
                type: 'category',
                data: hours
            },
            yAxis3D: {
                type: 'category',
                data: days
            },
            zAxis3D: {
                type: 'value'
            },
            grid3D: {
                boxWidth: 200,
                boxDepth: 80,
                light: {
                    main: {
                        intensity: 1.2
                    },
                    ambient: {
                        intensity: 0.3
                    }
                }
            },
            series: [{
                name: 'test',
                type: 'bar3D',
                data: data.map(function (item) {
                    return {
                        value: [item[1], item[0], item[2]]
                    }
                }),
                shading: 'color',

                label: {
                    show: false,
                    textStyle: {
                        fontSize: 16,
                        borderWidth: 1
                    }
                },

                itemStyle: {
                    opacity: 0.4
                },

                emphasis: {
                    label: {
                        textStyle: {
                            fontSize: 20,
                            color: '#900'
                        }
                    },
                    itemStyle: {
                        color: '#900'
                    }
                }
            }]
        };



        myChart1.setOption(option1);
        // myChart2.setOption(option2);
    };


    function send() {
        let user=document.getElementById("username").value;
        //alert(msg);
        webSocket.send(user);
    }
    //关闭按钮调用函数
    function clo() {
        webSocket.close(3000,"强制关闭");
    }
    webSocket.onclose=function () {
        setMessage("close websocket");
    };
    window.onbeforeunload=function () {
        clo();
    };









</script>
</html>